/// @brief First implementation of the first interface
/// @file FirstImplementOfSecond.hpp
/// @author Szymon Janikowski
///	@author Pawel Gilewski

#ifndef FIRST_IMP_OF_SECOND
#define FIRST_IMP_OF_SECOND
#include "../PluglibTest/SecondInterface.hpp"
#include "../PluglibTest/SecondInterfaceFactory.hpp"
#include <iostream>


///@brief constatn containing name of the implementation
#define FIS_IMPL_NAME "FirstImplOfSecond"

class FirstImplementOfSecond : public SecondInterface
{
public: 
	void action(){cout <<"First Implementation of Second Interface: Action with no parameters"<<endl;}
};

class FirstFactoryOfSecond : public SecondInterfaceFactory
{
public:
	//static const string name_;
	std::string getName(){return FIS_IMPL_NAME;};
	InterfaceBase* create(){return new FirstImplementOfSecond();}
};
//const string FirstFactoryOfFirst::name_ = "FirstImplOfFirst";
#endif